package com.hospital.hospitalserver.mapper;

import com.hospital.hospitalserver.entity.FeeCateInfo;
import com.hospital.hospitalserver.entity.FeeItemInfo;
import com.hospital.hospitalserver.entity.Vo.FeeItemStats;
import com.hospital.hospitalserver.util.Pager;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 费用配置相关功能方法
 * 2025年9月
 * e4glet
 * */
@Mapper
public interface FeeMapper {
    /**
     * 获取费用类别信息
     * */
    public List<FeeCateInfo> getFeeCateList();

    /**
     * 添加费用信息项
     * */
    public Integer addFeeItem(FeeItemInfo feeItem);

    /**
     * 编辑费用信息项
     * */
    public Integer editFeeItem(FeeItemInfo feeItem);

    /**
     * 分页功能
     * 获取费用信息项数据总数
     * */
    public Integer getFeeItemCountsBySearch(Pager pager);

    /**
     * 分页功能
     * 获取费用信息项分页数据
     * */
    public List<FeeItemInfo> getFeeItemMapperDataBySearch(Pager pager);

    /**
     * 统计费用类型数量，启用数量，停用数量，今日更新
     * */
    FeeItemStats statsFeeItemCount();

    /**
     * 获取费用列表数据
     * 用于排班选项
     * */
    List<FeeItemInfo> getFeeItemList();

    /**
     * 获取检查项目中的费用类型数据
     * 用于诊断-开具检查项目
     * */
    List<FeeItemInfo> getCheckFeeItemList();
}
